#include "mybutton.h"

/**
 * @brief MyButton::MyButton
 * @param parent
 * 我自定义一个按钮，自己实现他的各种动态
 */
MyButton::MyButton(QWidget *parent) : QWidget(parent)
{
    //载入图片
    picture.load(":/bb_leave.png");
    //我希望窗口有多大，我就画多大
    setFixedSize(picture.size());
    update();
}

void MyButton::mousePressEvent(QMouseEvent *event)
{
    picture.load(":/bb_normal.png");
    update();
    //主动触发自己的自定义的按钮
    emit my_click();
}

void MyButton::enterEvent(QEvent *event)
{
    picture.load(":/bb_enter.png");
    update();
}

void MyButton::leaveEvent(QEvent *event)
{
    picture.load(":/bb_leave.png");
    update();
}
//此方法需要被触发，只能通过update方法
void MyButton::paintEvent(QPaintEvent *event)
{
    //需要画笔
    QPainter painter(this);
    //在当前的窗体的正方形区域，将图片画上去
    painter.drawPixmap(rect(),picture);
}
